1. Field of the Invention
The present invention relates to data transmission systems for transmitting various types of data, such as voice, video, and computer data. More particularly, the invention relates to inverse multiplexing for Asynchronous Transfer Mode ("ATM") over communication links with different transmission rates and/or delays.
2. Description of the Related Art
Asynchronous Transfer Mode (ATM) is a high-speed connection oriented switching and multiplexing communication scheme that allows for high speed telecommunications. ATM is essentially a packet switched communication scheme which utilizes fixed length packets or cells. ATM utilizes fixed size cells that are 53 octets long, with 5 bytes being header information and 48 bytes being payload information. The 48 byte cell payload may contain up to four bytes of information for the ATM adaptation layer, leaving at least 44 bytes for user data.
The term "asynchronous transfer mode" (ATM) was coined to contrast with "synchronous transfer mode" (STM). ATM is based on a time slotted transmission scheme in which data from different applications are multiplexed in accordance with their particular bandwidth, delay, and loss requirements. In ATM each time slot carries exactly one ATM cell. STM is also time slotted, however, in contrast to ATM, time is divided into a fixed number of slots which are grouped together to form a frame which repeats in time. All the time slots that are located at the same relative position in each frame can be grouped to form a circuit consisting of a fixed number of time slots and a fixed bandwidth. STM is inefficient in that the bandwidth associated with each circuit is dedicated full-time to each particular user, regardless of whether the user has data which needs to be transmitted.
ATM addresses many of the deficiencies found in STM communication. ATM networks enable a wide variety of communication devices to share common carrier communication links on a demand driven, as needed basis. The carriers used in ATM typically include relatively slow speed metallic wire links, such as the T1 carrier in North America (1.544 Mbps) or the E1 carrier in Europe (2.048 Mbps). The carriers used for ATM may also include higher speed optical links, such as SDH/SONET OC-3 (155.52 Mbps) and OC-12 (622.08 Mbps). ATM networks utilize statistical multiplexing to provide bandwidth on an as needed basis to individual users. This obviates the need for each user to have a dedicated, wideband communication channel for occasional communication. Instead, wideband communication is a shared resource which may be allocated on demand. Of course, if a number of users require wideband communication all at the same time, the capacity of the network may be momentarily exceeded, resulting in lower performance. To protect a link from overload, the ATM network and the user agree on a description of the user's traffic ("traffic contract") which the network uses to manage and allocate network resources (i.e., link bandwidth and buffer occupancy), as well as to monitor the user's traffic for compliance with the agreement.
The ATM header information identifies the Virtual Path (Virtual Path Identifier or VPI), Virtual Channel (Virtual Channel Identifier or VCI), payload type, and cell loss priority. The VPI and VCI together from a Virtual Circuit. The ATM header also provides flow control and header error control. All the cells of a Virtual Circuit (VPI/VCI) follow the same path through the network, which is determined during call set-up procedures or by assignment. The different users of the ATM network provide their cells to the ATM network interface where they are queued for cell assignment and transmission. Cell transmission in an ATM network is causal, i.e., the cells in a connection (cells with the same VPI/VCI) arrive in order at the destination or far end. This is because the cells travel over the same Virtual Circuit.
An ATM network can support different types of services, such as loss sensitive/delay sensitive, loss insensitive/delay sensitive, loss sensitive/delay insensitive and loss insensitive/delay insensitive. The required QoS (Quality of Service) is determined during call set-up.
T1 carriers are typically a cost effective way of user access to an ATM network, as well as connection between ATM network switches. However, with the proliferation of increased data transfer and transmission requirements, the need for transmission bandwidth greater than that of a T1 carrier is needed in many situations. T3 carriers may be used in such situations; however, the use of T3 carriers is disadvantageous in that their cost is still somewhat prohibitive. Also, the use of T3 carriers as dedicated communication links is inefficient in that oftentimes they are under-utilized in relation to their data transmission capabilities.
ATM inverse multiplexers (IMA) have been proposed which combine several communication lines, e.g., T1 carriers, into a higher bandwidth aggregate communication path. See, for example, U.S. Pat. Nos. 5,608,733 and 5,617,417 and the ATM Forum, "Inverse Multiplexing for ATM (IMA) Specification", Version 1.0, July, 1997, the contents of which are incorporated herein by reference. ATM inverse multiplexing provides a modular bandwidth for user access to ATM networks and for connection between ATM network elements at rates between the traditional communication rates, for example, between the T1/E1 and T3/E3 rates. T3/E3 links may not be generally available throughout a network, and thus, ATM inverse multiplexing provides an effective method combining several T1/E1 links to collectively provide higher intermediate rates.
The general concept of ATM inverse multiplexing is shown in FIG. 1. In the transmit direction, an ATM cell stream 100 is received from the ATM layer and distributed on a cell by cell basis by the ATM inverse multiplexer 102 to a number of physical links 103, 104, and 105 which collectively make up Virtual Link 106. At the far end, a receiving ATM inverse multiplexer recombines the cells from each link, on a cell by cell basis, recreating the original ATM cell stream 110 which is then passed onto the ATM layer.
The transmit ATM inverse multiplexer periodically transmits special cells that contain information which permits reconstruction of the ATM cell stream at the receiving end. These cells, referred to as IMA Control Protocol (ICP) cells, also define an IMA frame. The transmitter aligns the transmission of IMA frames on all links to allow the receiver to adjust for differential link delays among the individual physical links. In this manner, the receiver can detect and adjust for differential delays by measuring the arrival times of the IMA frames on each link.
At the transmitting end, cells are transmitted continuously. If there are no ATM layer cells to be transmitted within a given IMA frame, then the ATM inverse multiplexer transmits Filler Cells to maintain a continuous stream of cells at the physical layer. The Filler Cells are discarded at the receiving end. A new physical layer OAM (operation administration and maintenance) cell is defined for use in ATM inverse multiplexing and includes codes which indicate whether a cell is an ICP or Filler Cell. The individual cell sequence for IMA framing for the case of three physical links is shown in FIG. 2.
As shown in FIG. 2, the transmitter creates an IMA frame 158 on physical links 103, 104, and 105 by periodically transmitting an ICP cell 150 on each link. Although the ICP cell defines an IMA frame, the ICP cell 150 may be located anywhere within the IMA frame 158. The position of the ICP cell 150 relative to the beginning of the frame (frame boundary) is referred to as the ICP cell offset. The use of ICP cell offsets is used to reduce cell delay variation (CDV) caused by the insertion of the frame marker, i.e., the ICP cell 150 itself. The ICP cell offset is conveyed as protocol information in each link's ICP cell. For the IMA framing shown in FIG. 2, link 103 has an ICP cell offset value of 0, link 104 has an ICP cell offset value of 2, and link 105 has an ICP cell offset value of 1. Filler cells 152 are sent at the transmitting end if there are no ATM layer cells 154 to be transmitted in available transmit opportunities between ICP cells 150. Each IMA frame is defined as M consecutive cells, numbered 0 to (M-1) for each link. ATM Inverse Multiplexing Over xDSL Lines
The term xDSL is used to refer to various digital subscriber line technologies, such as DSL, HDSL, HDSL2, ADSL and VDSL and others, which typically involve the transmission of data in the portion of the frequency spectrum above standard telephone service. xDSL lines may be used as the physical links for data transmission in an ATM network. In such an arrangement, cells from the ATM layer are delivered to the physical layer and transmitted over the xDSL link (e.g., metallic wire pair). At the far end, the cells from the physical layer are delivered to the ATM layer.
Multiple applications may share the xDSL bandwidth, and each of these applications may require a different Quality of Service (QoS). Because of the operational noise inherent in xDSL environments, forward error correction (FEC) is typically used to reduce the effects of noise and to meet the required QoS objectives. Convolutional interleaving may also be used to provide low cell loss in the presence of impulse noise, however, it often introduces delay. Therefore, in order to meet the desired performance requirements, a dual (or more complex) FEC approach is often used. The dual FEC approach provides a low delay path with greater cell loss probability and a high delay path with less cell loss probability.
The existing telephone network infrastructure has limited capability for meeting required transmission rates over desired distances, while at the same time meeting QoS objectives. This is because the information carrying capacity (bit rate) of a line in the existing telephone network is limited due to several factors, including, (1) the type of cables and topology of the network (e.g., the use of bridged taps), (2) the condition of the physical plant, and (3) the noise picked up by the network (noise ingress). Also, a reduction in capacity may result from restricted use of particular frequency bands (e.g., amateur radio bands) because of potential radio frequency interference. These factors reduce either the usable bandwidth (bit rate) or the usable distance of the working line (reach).
For a given xDSL network architecture, a customer's line may not support the bandwidth required. One alternative for increasing the line capacity is to condition the line. Another alternative is to reduce the usable distance of the line, for example by providing service only to those customers within a certain distance (i.e., the usable distance) or by placing loop carriers out in the field at certain intervals (i.e, the usable distance). These alternatives, however, have obvious disadvantages. ATM inverse multiplexing may be used in such cases to increase the capacity of the customer's line and to avoid the undesirable consequences of the alternative approaches outlined above.
Conventional ATM Inverse Multiplexing
Conventional ATM inverse multiplexers are limited in that they may only be used to multiplex same-speed carriers into higher bandwidth, aggregate communication paths. All of the individual links which are multiplexed into the aggregate link must operate at the same speed. Also, cells from the ATM layer are transmitted on the individual physical links in a cyclic round-robin fashion.
The disadvantages of conventional ATM inverse multiplexers become quite apparent given the fact that dissimilar cell rates are quite common in many communication systems, such as xDSL. There are a finite number of lines available between any network access node (e.g., XDSL equipment located in a central office, or other main facility, or in remote cabinets such as digital line cards) and the individual customer premises. The condition of each line and the noise of each channel will vary from line to line. Given a reasonable bit rate granularity and operating noise margin, any two lines may operate at different optimal rates. According to conventional ATM inverse multiplexers, higher speed lines would be compromised by reducing their speed to the "lowest common denominator", i.e., the speed achievable by the slowest line in a group of lines being multiplexed. This limits the practical utility of inverse multiplexing by decreasing the combined bandwidth of the group of lines.
During operation, or as a function of time, temperature, or other conditions, the performance of a line in a group may change, resulting in dissimilar cell rates. Conventional ATM inverse multiplexing is not equipped to deal with such a situation, and will, presumably remove the changed line. This again leads to a decrease in the available bandwidth.
One of the likely reasons for different cell rates among lines is the difference in the allocation of a link bandwidth to FEC cell flows. For example, an ADSL line may have 20% allocated as a low delay path for delay sensitive applications, and 80% allocated as a low cell loss path for loss sensitive applications such as video. To increase the capacity for video, a second ADSL link is multiplexed at 100% low cell loss. Even though the bit rate or throughput provided by the line code (e.g., DMT, QAM) of the two ADSL lines is provisioned to be the same, the cell flows through the different FEC paths result in dissimilar cell rates. Again, because of the dissimilar cell rates, these lines may not be ATM inverse multiplexed using conventional techniques.
Using the case of two ADSL lines as an example, both ADSL lines may have the same cell rate and the same cell transfer delay for similarly allocated link bandwidths. Both ADSL lines may have 20% allocated as a low delay path and 80% allocated as a low cell loss path. Conventional ATM inverse multiplexing techniques are not capable of multiplexing links that have cell flows with different cell transmission delays. Conventional techniques can only operate with a physical link that is characterized by a single transmission delay, such as, for example, a T1 carrier that provides ATM cells in a 193 bit frame (192 bits plus one framing bit) every 125 milliseconds. In accordance with such conventional multiplexing techniques, additional delay is added to some links in order to make the cell delay uniform for all links. This approach, however, eliminates the desired objective of having a low delay QoS because its delay would be made equal to the low loss QoS path, which by the nature of FEC has much greater delay.
Certain conventional multiplexing techniques do compensate for delay, however, the compensation is for differences in transmission delay among links.
Accordingly, it will be apparent to those skilled in the art that there continues to be a need for a method of ATM inverse multiplexing of links of different line rates, links having different cell rates but with similar cell transfer delay, and links that provide two or more cell flows that meet specific quality of service (QoS) objectives (e.g., cell loss and/or cell delay). The term "flow" is used to refer to the flow of cells over a service access point of the Transmission Convergence (TC) sublayer associated with a physical interface (or link). The present invention addresses these needs and others.